Data compression is the process of transforming information from one representation to another, more compact representation from which the original can be recovered. The compression and decompression processes are often referred to as encoding and decoding, respectively. Data compression has applications in the areas of data storage and data transmission. Besides compression savings, other parameters of concern include encoding and decoding speeds and workspace requirements, the ability to access and decode partial files, and error generation and propagation.